As it is generally known, virtual machines are computer software emulations of hardware computer systems. Virtual machines are typically created by and run on a hypervisor or virtual machine monitor that may also be referred to as a virtualization platform or virtualization environment.
As with the hardware computer systems that they emulate, virtual machines must provide data storage for the programs that they execute. It is accordingly necessary to provision data storage resources to a virtual machine from a physical storage system, for example by assigning disk space of a remote storage server system to the virtual machine.